#pragma once
#include "SpriteComponent.h"
#include "graphics/GrVector.h"

class CHelicopter : public CSpriteComponent
{
protected:
	//CGrVector _position;
	CGrVector _velocity; //use x-z for this game (except the plane)
	double _rotation; //we restrict all up vectors to (0, 1, 0), so rotation is a scalar in the x-z plane
	GLdouble _moveX,_moveY,_moveZ;
	GLdouble p_x,  p_y, p_z;
	int _savedHostages;
	int MaxHostages;

public:

	CHelicopter(void);
	~CHelicopter(void);
	void Render(void);
	void DrawHeli(GLdouble p_x, GLdouble p_y, GLdouble p_z);
	void Update(double dt);
	CGrVector getPosition() {CGrVector _position(_moveX,_moveY,_moveZ);return _position; }
	CGrVector getVelocity() { return _velocity; }
	double getRotation() { return _rotation; }
	void setRotation(double angle) { _rotation += angle; }
	void setPosition(GLdouble x, GLdouble y, GLdouble z);
	void setVelocity(CGrVector v) { _velocity = v; }

	void addSavedHostages(int n);
	int getHostages(){return _savedHostages;}
};
